package br.com.appclassificados.testes;

import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

import br.com.appclassificados.dao.CategoriaDao;
import br.com.appclassificados.model.Categoria;

@ManagedBean(name="categoriaDaoTeste")
@SessionScoped
public class CategoriaDaoTeste {
	
	private Categoria cat;
	
	public CategoriaDaoTeste(){
		super();
	}
	
	public String salvar () throws Exception{
		
		CategoriaDao dao = new CategoriaDao();
		
		//Cadastrar
		this.cat = new Categoria(1, "Eletronicos");
		if(dao.insert(this.cat)){
			dao = new CategoriaDao();
			dao.insert(this.cat);
			dao = new CategoriaDao();
			dao.insert(this.cat);
			System.out.println("Cadastrado com exito.");
		}
		else
			System.out.println("Erro ao cadastrar.");
		
		//Editar
		this.cat = new Categoria(1, "Casas");
		dao = new CategoriaDao();
		if(dao.update(this.cat))
			System.out.println("Editado com exito.");
		else
			System.out.println("Erro ao Editar.");
		
		//Deletar
		dao = new CategoriaDao();
		this.cat = new Categoria(2, "Casas");
		if(dao.delete(this.cat))
			System.out.println("Deletado com exito.");
		else
			System.out.println("Erro ao deletar.");
		
		//List
		dao = new CategoriaDao();
		List<Categoria> list = dao.readList();
		System.out.println("\nLista");
		for(int i=0; i<list.size(); i++){
			System.out.println("Id: "+list.get(i).getCategoriaId()+"\tNome: "+list.get(i).getNome());
		}
		
		System.out.println("\nSeachs");
		//Seach id 
		dao = new CategoriaDao();
		this.cat = dao.search(1);
		System.out.println("Id: "+this.cat.getCategoriaId()+"\tNome: "+this.cat.getNome());
		
		//Seach nome
		dao = new CategoriaDao();
		this.cat = dao.search("cas");
		System.out.println("Id: "+this.cat.getCategoriaId()+"\tNome: "+this.cat.getNome());
		
		return "";
	}

}
